home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / AACD / Programming / MuManual / Include / libraries / 680x0.h < prev    next >
C/C++ Source or Header  |  1999-10-31  |  3KB  |  76 lines

  1. /*************************************************************************
  2.  ** 680x0.library                                                    **
  3.  **                                                                     **
  4.  ** CPU driver library base library                    **
  5.  **                                                                     **
  6.  ** © 1999 THOR-Software, Thomas Richter                                **
  7.  ** No commercial use, reassembly, modification without prior, written  **
  8.  ** permission of the authors.                                          **
  9.  ** Including this library in any commercial software REQUIRES a        **
  10.  ** written permission and the payment of a small fee.                  **
  11.  **                                                                     **
  12.  **---------------------------------------------------------------------**
  13.  ** Definition of the library, and structures                           **
  14.  **                                    **
  15.  ** $VER: 40.2 (28.8.1999) © THOR                               **
  16.  *************************************************************************/
  17.  
  18. #ifndef LIBRARIES_680X0_H
  19. #define LIBRARIES_680X0_H
  20.  
  21. #ifndef EXEC_TYPES_H
  22. #include <exec/types.h>
  23. #endif
  24.  
  25. #ifndef EXEC_LIBRARIES_H
  26. #include <exec/libraries.h>
  27. #endif
  28.  
  29. #ifndef MMU_MMUBASE_H
  30. #include <mmu/mmubase.h>
  31. #endif
  32.  
  33. /* There's really nothing in this library base you need to care about */
  34.  
  35. struct MC680X0Base {
  36.         struct Library  dllib_Library;
  37.         /* more below this point */
  38. };
  39.  
  40. #define MC680X0_NAME "680x0.library"
  41.  
  42. /* Bit definitions for the SetFPUExceptions call, exception disable */
  43.  
  44. #define FPUCtrlB_BSUN    0L    /* disable branch or set on unordered */
  45. #define FPUCtrlB_INEX    1L    /* disable inexact result exception */
  46. #define FPUCtrlB_DIVZ    2L    /* disable divide by zero exception */
  47. #define FPUCtrlB_UNFL    3L    /* disable underflow exception */
  48. #define FPUCtrlB_OVFL    4L    /* disable overflow exception */
  49. #define FPUCtrlB_SNAN    5L    /* disable signalling NAN exception */
  50. #define FPUCtrlB_OPERR    6L    /* disable operand error exception */
  51.  
  52. #define FPUCtrlF_BSUN    (1L<<0L)
  53. #define FPUCtrlF_INEX    (1L<<1L)
  54. #define FPUCtrlF_DIVZ    (1L<<2L)
  55. #define FPUCtrlF_UNFL    (1L<<3L)
  56. #define FPUCtrlF_OVFL    (1L<<4L)
  57. #define FPUCtrlF_SNAN    (1L<<5L)
  58. #define FPUCtrlF_OPERR    (1L<<6L)
  59.  
  60. /* CPU and FPU definitions. */
  61.  
  62. #define    CPUTYPE_68000    '0'    /* a plain 68000*/
  63. #define    CPUTYPE_68010    '1'    /* a 68010    */
  64. #define    CPUTYPE_68020    '2'    /* a 68020    */
  65. #define    CPUTYPE_68030    '3'    /* a 68030    */
  66. #define    CPUTYPE_68040    '4'    /* a 68040    */
  67. #define    CPUTYPE_68060    '6'    /* a 68060    */
  68.  
  69. #define FPUTYPE_NONE    0    /* no FPU available */
  70. #define    FPUTYPE_68881    '1'    /* the 68881 external FPU     */
  71. #define    FPUTYPE_68882    '2'    /* the advanced edition of this chip */
  72. #define    FPUTYPE_68040    '4'    /* the 68040 buildin FPU    */
  73. #define    FPUTYPE_68060    '6'    /* the 68060 buildin FPU    */
  74.  
  75. #endif
  76.